17 research outputs found
Inductive logic programming at 30: a new introduction
Inductive logic programming (ILP) is a form of machine learning. The goal of
ILP is to induce a hypothesis (a set of logical rules) that generalises
training examples. As ILP turns 30, we provide a new introduction to the field.
We introduce the necessary logical notation and the main learning settings;
describe the building blocks of an ILP system; compare several systems on
several dimensions; describe four systems (Aleph, TILDE, ASPAL, and Metagol);
highlight key application areas; and, finally, summarise current limitations
and directions for future research.Comment: Paper under revie
CSS processors and methodologies
Rad CSS procesori i metodologije za cilj ima približiti svrhu postojanja alata za procesiranje CSS-a poÄetniku u svijetu razvoja internetskih aplikacija. Opisana su Äetiri glavna predstavnika alata za procesiranje CSS-a ā SASS, LESS, Stylus te PostCSS. Uz to, dan je kratki pregled povijesti razvoja Cascading Style Sheets-a i njegovih ograniÄenja koja su posljediÄno dovela do razvoja alata za procesiranje CSS-a. Prikazani su osnovni primjeri koristeÄi navedene alate te su izdvojene razlike i prednosti, odnosno nedostatci meÄu njima. Osim toga, opisane su metodologije pisanja CSS koda koje doprinose Äitljivosti i pravilnoj strukturi koda. Uz sve nabrojano, izvrÅ”ena su mjerenja brzine obraÄivanja koda koristeÄi svaki od obraÄenih alata te su izdvojene njihove prednosti i nedostatci. Ovaj rad pruža generalni pregled glavnih dostupnih alata koji omoguÄavaju lakÅ”i rad s CSS-om, ali za detaljniju se analizu preporuÄa iscrpna dokumentacija svakog pojedinaÄnog alata od navedenih. Na posljetku, poglavljem BuduÄnost CSS-a i alata za procesiranje CSS-a pokuÅ”ava se predvidjeti daljnji razvoj alata odnosno hoÄe li u buduÄnosti uopÄe biti i potrebni.Thesis āCSS processors and methodologiesā aims to familiarize beginners in a world of web development with CSS processors and their purpose. Four of the main representatives have been described, namely SASS, LESS, Stylus, and PostCSS. Also, CSSās history has been summarized together with its shortcomings which ultimately led to development of CSS processors. Simple code examples written in each of the aforementioned tools are provided which highlight differences, advantages and disadvantages among them. Main methodologies for writing CSS code have been described, all of which help with readability and proper code structure. Furthermore, using each of the covered tools, speed test for compiling code have been created which showcase their strong and weak points. This thesisā main goal is a high-level overview of all main CSS processors which can help with writing CSS, but for a deeper insight in the each tool a look in its detailed documentation is advised. Finally, the chapter titled Future of CSS and CSS processing tools tries to paint a picture of a further development of the CSS processing tools and will their assistance even be necessary in the near future
Learning Logic Programs by Discovering Higher-Order Abstractions
Discovering novel abstractions is important for human-level AI. We introduce
an approach to discover higher-order abstractions, such as map, filter, and
fold. We focus on inductive logic programming, which induces logic programs
from examples and background knowledge. We introduce the higher-order
refactoring problem, where the goal is to compress a logic program by
introducing higher-order abstractions. We implement our approach in STEVIE,
which formulates the higher-order refactoring problem as a constraint
optimisation problem. Our experimental results on multiple domains, including
program synthesis and visual reasoning, show that, compared to no refactoring,
STEVIE can improve predictive accuracies by 27% and reduce learning times by
47%. We also show that STEVIE can discover abstractions that transfer to
different domain
Inductive logic programming at 30
Inductive logic programming (ILP) is a form of logic-based machine learning.
The goal of ILP is to induce a hypothesis (a logic program) that generalises
given training examples and background knowledge. As ILP turns 30, we survey
recent work in the field. In this survey, we focus on (i) new meta-level search
methods, (ii) techniques for learning recursive programs that generalise from
few examples, (iii) new approaches for predicate invention, and (iv) the use of
different technologies, notably answer set programming and neural networks. We
conclude by discussing some of the current limitations of ILP and discuss
directions for future research.Comment: Extension of IJCAI20 survey paper. arXiv admin note: substantial text
overlap with arXiv:2002.11002, arXiv:2008.0791
DeepProbLog: Neural Probabilistic Logic Programming
We introduce DeepProbLog, a probabilistic logic programming language that
incorporates deep learning by means of neural predicates. We show how existing
inference and learning techniques can be adapted for the new language. Our
experiments demonstrate that DeepProbLog supports both symbolic and subsymbolic
representations and inference, 1) program induction, 2) probabilistic (logic)
programming, and 3) (deep) learning from examples. To the best of our
knowledge, this work is the first to propose a framework where general-purpose
neural networks and expressive probabilistic-logical modeling and reasoning are
integrated in a way that exploits the full expressiveness and strengths of both
worlds and can be trained end-to-end based on examples.Comment: Accepted for spotlight at NeurIPS 201